WOLF core
WOLF: A Modular Estimation Framework for Robotics
XXXXXXXXXXXXXXXXXXXXXXXXvoid(0)" frameborder="0" name="MSearchResults" id="MSearchResults">
wolf::MotionBuffer Class Reference

class for motion buffers. More...

#include <core/processor/motion_buffer.h>

Inheritance diagram for wolf::MotionBuffer:
[legend]

Public Member Functions

 MotionBuffer ()
 
const Motion & getMotion (const TimeStamp &_ts) const
 
void getMotion (const TimeStamp &_ts, Motion &_motion) const
 
void split (const TimeStamp &_ts, MotionBuffer &_oldest_buffer)
 
void print (bool show_data=0, bool show_delta=0, bool show_delta_int=0, bool show_jacs=0, bool show_covs=0)
 

Detailed Description

class for motion buffers.

It consists of a buffer of pre-integrated motions (aka. delta-integrals) that is being filled by the motion processors (deriving from ProcessorMotion). Each delta-integral is accompanied by a time stamp, a Jacobian and a covariances matrix.

This buffer contains the time stamp and delta-integrals:

  • since the last key-Frame
  • until the frame of this capture.

The buffer can be queried for motion-integrals and delta-integrals corresponding to a provided time stamp, with the following rules:

  • If the query time stamp is later than the last one in the buffer, the last motion-integral or delta-integral is returned.
  • If the query time stamp is earlier than the beginning of the buffer, the earliest Motion or Delta is returned.
  • If the query time stamp matches one time stamp in the buffer exactly, the returned motion-integral or delta-integral is the one of the queried time stamp.
  • If the query time stamp does not match any time stamp in the buffer, the returned motion-integral or delta-integral is the one immediately before the query time stamp.

Constructor & Destructor Documentation

◆ MotionBuffer()

wolf::MotionBuffer::MotionBuffer ( )

Member Function Documentation

◆ getMotion() [1/2]

const Motion & wolf::MotionBuffer::getMotion ( const TimeStamp &  _ts) const

◆ getMotion() [2/2]

void wolf::MotionBuffer::getMotion ( const TimeStamp &  _ts,
Motion &  _motion 
) const

◆ print()

void wolf::MotionBuffer::print ( bool  show_data = 0,
bool  show_delta = 0,
bool  show_delta_int = 0,
bool  show_jacs = 0,
bool  show_covs = 0 
)

◆ split()

void wolf::MotionBuffer::split ( const TimeStamp &  _ts,
MotionBuffer &  _oldest_buffer 
)

The documentation for this class was generated from the following files: